#define  _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
//int main()
//{
//	printf("YYDS");
//	main();
//	return 0;
//}
//int max(int n)
//{
//	if (n == 0)
//		return 1;
//	else return max(n - 1) * n;
//}
//int main()
//{
//	int n = 0;
//	scanf("%d", &n);
//	int ret=max(n);
//	printf("%d", ret);
//	return 0;
//}
// 
 
 
 
//int syb(int n )
//{
//	int a = 1;
//	int b = 1;
//	int c = 1;
//	while (n > 2)
//	{
//		c = a + b;
//		a = b;
//		b = c;
//		n--;
//	}return c;
//}
//int main()
//{
//	int n = 0;
//	scanf("%d",&n);
//	int arr = syb(n);
//	printf("%d\n ",arr);
//	return 0;
// }

//int  fib(int  n )
//{
//	if(n<=2)
//		return 1;
//	else
//		return fib(n - 1) + fib(n - 2);
//}
//int main()
//{
//	int n = 0;
//	scanf("%d", &n);
//	int arr = fib(n);
//	printf("%d", arr);
//	return 0;
//}
//int cyy(int n, int k)
//{
//	if (k == 0)
//		return 1;
//	else
//		return n * cyy(n, k - 1);
//}
//int main()
//{
//	int n = 0;
//	int k = 0;
//	scanf("%d %d", &n, &k);
//	int arr=cyy(n,k);
//	printf("%d", arr);
//	return 0;
//}

//int cxk(int n)
//{
//	if (n < 10)
//		return n;
//	else
//
//	return (n % 10) + cxk(n / 10);
//}
//int main()
//{
//	int n = 0;
//	scanf("%d", &n);
//	int arr = cxk(n);
//	printf("%d", arr);
//	return 0;
//}
//int xw(int n)
//{
//	if (n == 0)
//		return 1;
//	else
//		return n * xw(n - 1);
//}
//
//int main()
//{
//	int n = 0;
//	scanf("%d", &n);
//	int arr = xw(n);
//	printf("%d", arr);
//	return 0;
//}

//

void  xw(int n)
{
	if (n > 9)
	{
		xw(n / 10);
	}printf("%d ", n % 10);
}
int main()
{
	int n = 0;
	scanf("%d",&n);
    xw(n);
	return 0;
}